//---------------------

#include "sell.h"
//-------------------------------------
/** Classe Entidade Request(pedido). */
Request::Request(Identifier identifier, CPF cpf,
            Identifier album, Quantity quantity, Price priceUnit)
            :identifier(identifier), cpf(cpf),
             album(album), quantity(quantity), priceUnit(priceUnit){
}

/** Funcao de GET para identificador do Request. */
inline Identifier Request::getIdentifier() const{
    return identifier;
};

/** Funcao de SET para identificador do Request. */
inline void         Request::setIdentifier(const Identifier identifier){
    this->identifier = identifier;
};

/** Funcao de GET para CPF do Request. */
inline CPF Request::getCPF() const{
    return cpf;
};

/** Funcao de set  para CPF. */
inline void Request::setCPF(const CPF cpf){
    this->cpf = cpf;
};

/** Funcao de GET para album do Request. */
inline Identifier Request::getAlbum() const{
    return album;
};

/** Funcao de SET para album do Request. */
inline void         Request::setAlbum(const Identifier album){
    this->album = album;
};

/** Funcao de GET para quantidade do Request. */
inline Quantity Request::getQuantity() const{
    return quantity;
};

/** Funcao de SET para quantidade do Request. */
inline void         Request::setQuantity(const Quantity quantity){
    this->quantity = quantity;
};

/** Funcao de GET para preco unitario do Request. */
inline Price Request::getPriceUnit() const{
    return priceUnit;
};

/** Funcao de SET para preco unitario do Request. */
inline void         Request::setPriceUnit(const Price priceUnit){
    this->priceUnit = priceUnit;
};

/** Funcao de GET para preco Total do Request. */
inline Price Request::getPriceTotal() const{
     Price priceTotal;
     priceTotal.set(this->priceUnit.get()   *  this->quantity.get());
     return priceTotal.get();
};
